//
//  IDBProtocol.h
//  DesignMode
//
//  Created by wangzhipan on 2024/10/14.
//

#ifndef IDBProtocol_h
#define IDBProtocol_h
/*
 比如数据库有sql、Oracle等等，每个数据库都有各自的connect、command、dataReader、exit等流程
 */
@protocol IDBConnect <NSObject>
- (void)connect;
@end

@protocol IDBCommand <NSObject>
- (void)insert;
- (void)deleteOne;
@end

@protocol IDBDataReader <NSObject>
- (void)query;
@end


/*
 上面这些协议实现类的创建都是一个DB操作紧密关联的，我们可以把它们综合在一起
 */
@protocol IDBFactory <NSObject>
- (id<IDBConnect>)createDBConnect;
- (id<IDBCommand>)createDBCommand;
- (id<IDBDataReader>)createDBDataReader;
@end
#endif /* IDBProtocol_h */
